package com.stark.wechat.message.in;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import com.stark.wechat.core.Event;
import com.stark.wechat.core.MessageType;
import lombok.Data;

/**
 * 模板消息发送任务完成事件
 *
 * @author <a href="mailto:mengbin@hotmail.com">Ben</a>
 * @version 1.0.0
 * @since 2024/5/27
 */
@JsonIgnoreProperties(ignoreUnknown = true)
@Data
public class TemplateSendJobFinishEventMessage implements EventMessage {

    private static final long serialVersionUID = -1167029062885207124L;

    /** 开发者微信号 */
    @JacksonXmlProperty(localName = "ToUserName")
    private String toUserName;

    /** 发送方账号（一个OpenID） */
    @JacksonXmlProperty(localName = "FromUserName")
    private String fromUserName;

    /** 消息创建时间  */
    @JacksonXmlProperty(localName = "CreateTime")
    private Long createTime;

    /** 消息类型 */
    @JacksonXmlProperty(localName = "MsgType")
    private MessageType msgType;

    /** 事件 */
    @JacksonXmlProperty(localName = "Event")
    private Event event;

    /** 消息id */
    @JacksonXmlProperty(localName = "MsgId")
    private Long msgId;

    /** 发送状态 */
    @JacksonXmlProperty(localName = "Status")
    private String status;

}
